package com.yin.waimai.service;

import com.yin.waimai.dto.AddressDTO;
import com.yin.waimai.model.Address;

import java.util.List;
import java.util.Optional;

public interface AddressCacheService {

    /**
     * 保存用户的常用地址到缓存
     * @param userId 用户ID
     * @param address 地址信息
     */
    void saveUserAddress(String userId, AddressDTO address);

    /**
     * 获取用户的所有常用地址
     * @param userId 用户ID
     * @return 地址列表
     */
    List<AddressDTO> getUserAddresses(String userId);

    /**
     * 删除用户的某个常用地址
     * @param userId 用户ID
     * @param addressId 地址ID或唯一标识
     * @return 是否删除成功
     */
    boolean deleteUserAddress(String userId, String addressId);

    /**
     * 清除用户的所有常用地址缓存
     * @param userId 用户ID
     */
    void clearUserAddresses(String userId);
}